/**
 * 全局安装yeoman：yarn global add yo 或 npm install yo --global
 * 安装对应的generator：yarn global add generator-node 或 npm install generator-node --global
 * 通过yo运行generator：在指定目录下yo node
 * 
 * sub generator子集生成器，以generator-node为例
 *  + yo node:cli
 *  + yarn
 *  + yarn link
 *  + yeoman-cli --help（如果macPermission denied，cd到cli.js所在目录，执行chmod a+x ./cli.js，然后就可以执行了）
 * 
 * Yeoman常规使用步骤
 *  + 明确你的需求
 *  + 找到合适的Generator
 *  + 全局范围安装找到的Generator
 *  + 通过yo运行对应的Generator
 *  + 通过命令行交互填写选项
 *  + 生成你所需要的项目结构
 * 
 * Generator基本结构
 *  + generators/ 生成器目录
 *    + app/ 默认生成器目录
 *      + index.js 默认生成器实现，此文件为Generator的核心入口。需要导出一个继承自Yeoman Generator的类型，Yeoman Generator在工作时会自动调用我们在此类型中定义的一些生命周期方法，我们在这些方法中可以通过调用父类提供的一些工具方法实现一些功能
 *    + component/ 其他生成器目录
 *      + index.js 其他生成器实现
 *  + package.json 模块包配置文件
 * 
 * Generator名称必须是generator-<name>
 * 
 * Generator创建流程
 *  + mkdir 目录
 *  + cd 到目录下
 *  + yarn init
 *  + yarn add yeoman-generator
 * 
 * Generator运行流程
 *  + mkdir 目录
 *  + cd 到目录下
 *  + yo 生成器的名称
 * 
 * 发布Generator
 *  + echo node_modules > .gitignore
 *  + git init
 *  + git status
 *  + git add .
 *  + git commit -m "test"
 *  + git remote add origin <your git url> 链接到远端仓库
 *  + git push -u origin master
 *  + yarn publish（如果是淘宝镜像源，需修改成官方镜像 yanr publish --registry=https://registry.yarnpkg.com）
 */